package com.cysoft.third.echarts.component.legend;

/**
 * @author 玖零
 * @version v0.0.1
 * @project cysoft-third-echarts
 * @package com.cysoft.third.echarts.component.legend
 * @date 2025/3/13 01:36
 * @desc 文本样式配置，用于设置图例中各种文本的字体、颜色、背景等样式属性。
 */
public class TextStyle {

    /**
     * 文本的颜色，默认为 '#333'。
     */
    private String color = "#333";
    /**
     * 文本的字体样式，默认为 'normal'。可选值有 'normal'、'italic'、'oblique' 等。
     */
    private String fontStyle = "normal";
    /**
     * 文本的字体粗细，默认为 'normal'。可选值有 'normal'、'bold'、'bolder'、'lighter' 等。
     */
    private String fontWeight = "normal";
    /**
     * 文本的字体家族，默认为 'sans-serif'。
     */
    private String fontFamily = "sans-serif";
    /**
     * 文本的字体大小，默认为 12 像素。
     */
    private Integer fontSize = 12;
    /**
     * 文本的行高，默认为 null 表示使用默认行高。
     */
    private Integer lineHeight;
    /**
     * 文本的背景颜色，默认为 'transparent'（透明）。
     */
    private Object backgroundColor = "transparent";
    /**
     * 文本的边框颜色，默认为 null 表示不显示边框。
     */
    private Object borderColor;
    /**
     * 文本的边框宽度，默认为 null 表示不显示边框。
     */
    private Integer borderWidth;
    /**
     * 文本的边框类型，默认为 'solid'（实线）。可选值有 'solid'、'dashed'、'dotted' 等。
     */
    private Object borderType = "solid";
    /**
     * 文本边框的虚线偏移量，默认为 null。
     */
    private Integer borderDashOffset;
    /**
     * 文本边框的圆角半径，可以是单个值或数组分别指定四个角的圆角半径。
     */
    private Object borderRadius;
    /**
     * 文本的内边距，可以是单个值或数组分别指定上、右、下、左的内边距。
     */
    private Object padding;
    /**
     * 文本阴影的颜色，默认为 'transparent'（透明），表示不显示阴影。
     */
    private String shadowColor = "transparent";
    /**
     * 文本阴影的模糊大小，默认为 null 表示不显示阴影。
     */
    private Integer shadowBlur;
    /**
     * 文本阴影的水平偏移量，默认为 null 表示不显示阴影。
     */
    private Integer shadowOffsetX;
    /**
     * 文本阴影的垂直偏移量，默认为 null 表示不显示阴影。
     */
    private Integer shadowOffsetY;
    /**
     * 文本容器的宽度，默认为 null 表示自适应内容。
     */
    private Integer width;
    /**
     * 文本容器的高度，默认为 null 表示自适应内容。
     */
    private Integer height;
    /**
     * 文本边框的颜色，默认为 null 表示不显示文本边框。
     */
    private Object textBorderColor;
    /**
     * 文本边框的宽度，默认为 null 表示不显示文本边框。
     */
    private Integer textBorderWidth;
    /**
     * 文本边框的类型，默认为 'solid'（实线）。可选值有 'solid'、'dashed'、'dotted' 等。
     */
    private Object textBorderType = "solid";
    /**
     * 文本边框的虚线偏移量，默认为 null。
     */
    private Integer textBorderDashOffset;
    /**
     * 文本阴影的颜色，默认为 'transparent'（透明），表示不显示文本阴影。
     */
    private String textShadowColor = "transparent";
    /**
     * 文本阴影的模糊大小，默认为 null 表示不显示文本阴影。
     */
    private Integer textShadowBlur;
    /**
     * 文本阴影的水平偏移量，默认为 null 表示不显示文本阴影。
     */
    private Integer textShadowOffsetX;
    /**
     * 文本阴影的垂直偏移量，默认为 null 表示不显示文本阴影。
     */
    private Integer textShadowOffsetY;
    /**
     * 文本溢出处理方式，默认为 'none'。可选值有 'none'、'truncate'（截断）、'break'（换行）等。
     */
    private String overflow = "none";
    /**
     * 文本溢出时显示的省略号，默认为 '...'。
     */
    private String ellipsis = "...";
    /**
     * 富文本样式配置，用于对文本中的不同部分应用不同的样式。
     */
    private Map<String, Object> rich;
}
